package com.lmaos.allcontrol.modulecontrol;

import java.util.List;

public interface ModuleLoader {
	/** 指定选择要扫描的模块
	 * 
	 * @param moduleLoaderCondition
	 */
	void setModuleLoaderCondition(ModuleLoaderCondition moduleLoaderCondition);
	/** 为当前扫描出来的模块类统一实例(单实例用)
	 * 
	 * @param moduleObjectInstance
	 */
	void setModuleObjectInstance(ModuleObjectInstance moduleObjectInstance);
	/** 是否扫描jar 默认是 true
	 * 
	 * @param scanjar
	 */
	void setScanJar(boolean scanjar);
	/** 通过指定自定义的classpath扫描模块,当前传入 必须是 根 classpath
	 * 
	 * @param classPath
	 * @param classInstallName	class 安装名
	 * @return
	 */
	List<ModuleBean> loadModule(String classPath,String classInstallName);
	
	List<ModuleBean> loadModule(String classPath);
	
}
